Knowledge engineering
Knowledge engineering (KE) has been defined by Feigenbaum, and McCorduck (1983) as follows: ""KE is an engineering discipline that involves integrating knowledge into computer systems in order to solve complex problems normally requiring a high level of human expertise." Feigenbaum, E., and P. McCorduck. (1983). The Fifth Generation. Reading, MA: Addison-Wesley. At present, it refers to the building, maintaining and development of knowledge-based systems (Kendal, 2007 ). It has a great deal in common with software engineering, and is used in many computer science domains such as artificial intelligence }}, including databases, data mining, expert systems, decision support systems and geographic information systems. Knowledge engineering is also related to mathematical logic, as well as strongly involved in cognitive science and socio-cognitive engineering where the knowledge is produced by socio-cognitive aggregates (mainly humans) and is structured according to our understanding of how human reasoning and logic works. Various activities of KE specific for the development of a knowledge-based system: *Assessment of the problem *Development of a knowledge-based system shell/structure *Acquisition and structuring of the related information, knowledge and specific preferences (IPK model) *Implementation of the structured knowledge into knowledge bases *Testing and validation of the inserted knowledge *Integration and maintenance of the system *Revision and evaluation of the system. Being still more art than engineering, KE is not as neat as the above list in practice. The phases overlap, the process might be iterative, and many challenges could appear. Recently, emerges meta-knowledge engineering * as a new formal systemic approach to the development of a unified knowledge and intelligence theory. Knowledge engineering principles Since the mid-1980s, knowledge engineers have developed a number of principles, methods and tools that have considerably improved the process of knowledge acquisition and ordering. Some of the key principles are summarized as follows: * Knowledge engineers acknowledge that there are different types of knowledge, and that the right approach and technique should be used for the knowledge required. * Knowledge engineers acknowledge that there are different types of experts and expertise, such that methods should be chosen appropriately. * Knowledge engineers recognize that there are different ways of representing knowledge, which can aid the acquisition, validation and re-use of knowledge. * Knowledge engineers recognize that there are different ways of using knowledge, so that the acquisition process can be guided by the project aims (goal-oriented). * Knowledge engineers use structured methods to increase the efficiency of the acquisition process. Views of knowledge engineering There are two main views to knowledge engineering: *Transfer View – This is the traditional view. In this view, the assumption is to apply conventional knowledge engineering techniques to transfer human knowledge into artificial intelligence systems. *Modeling View – This is the alternative view. In this view, the knowledge engineer attempts to model the knowledge and problem solving techniques of the domain expert into the artificial intelligence system. Some methodologies that support the development of knowledge or intelligence-based systems include: * CommonKADS * TOGA metatheory - Top-down Object-based Goal-oriented Approach Bibliography * See also * Knowledge representation * Knowledge management * Knowledge level modeling * Decision support system * Connectionist expert system * Systemics * Cognitive science External links * Data & Knowledge Engineering - Elsevier Journal * Knowledge Engineering Review, Cambridge Journal * The International Journal of Software Engineering and Knowledge Engineering- World Scientific * IEEE Transactions on Knowledge and Data Engineering * Category:Semantic Web Category:Ontology (computer science) Category:Information science de:Wissensmodellierung fa:مهندسی دانش fr:Ingénierie des connaissances lt:Žinių inžinerija ja:知識工学 pl:inżynieria wiedzy